*****Replication Code for "Foreign Media Broadcasts as a Tool of Soft Power" by Chapman and Gerber
*****Edited on January 15, 2019


log using ChapmanGerber.log, replace
set more off
use Replication_Dataset_SoftPower.dta

***Set weights
svyset rid [weight=weights]

***Durbin-Wu-Hausman Tests for Full Models
svy: ologit rtv5 lang tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
predict rtv5_pred3
gen res3=rtv5-rtv5_pred3
*Opinion Formation
svy: reg domestic1 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3  /*Endogenous*/
svy: reg forpolr1 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3  /*Endogenous*/
svy: logit warwho1 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3  /*Endogenous*/
*Issue Framing
svy: reg domestic2 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3 
svy: reg forpolr2 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3 
svy: mlogit warwho2 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity, base(2)
test res3 /*Endogenous*/
svy: ologit relrus2 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3 
svy: ologit relusa2 res3 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res3 /*Endogenous*/


***In-Text Regressions
*Agenda-Setting 
cmp setup
eststo: cmp (domestic1 = i.rtv5  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_cont $cmp_oprobit) nolrt difficult
eststo: cmp (domestic1 = i.rtv5  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_cont $cmp_oprobit) nolrt difficult
eststo: cmp (forpolr1 = i.rtv5  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_cont $cmp_oprobit) nolrt difficult
eststo: cmp (forpolr1 = i.rtv5  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_cont $cmp_oprobit) nolrt difficult
eststo: cmp (warwho1 = i.rtv5  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_probit $cmp_oprobit) nolrt difficult
eststo: cmp (warwho1 = i.rtv5  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_probit $cmp_oprobit) nolrt difficult
eststo clear
*Issue Framing 
eststo: svy: reg domestic2 ib1.rtv5 tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 
eststo: svy: reg domestic2 ib1.rtv5 tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 
eststo: svy: ologit forpolr2 ib1.rtv5 tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity
eststo: svy: ologit forpolr2 ib1.rtv5 tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity
eststo: svy: ologit relrus2 ib1.rtv5 tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 
eststo: svy: ologit relrus2 ib1.rtv5 tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 
eststo: cmp (relusa2 = i.rtv5  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_oprobit $cmp_oprobit) nolrt difficult
eststo: cmp (relusa2 = i.rtv5  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_oprobit $cmp_oprobit) nolrt difficult
eststo: cmp (warwho2 = i.rtv5  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_mprobit $cmp_oprobit) nolrt difficult
eststo: cmp (warwho2 = i.rtv5  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) (rtv5 = lang  tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity, iia) [weight=weights], ind($cmp_mprobit $cmp_oprobit) nolrt difficult


**Appendix: Relationship between US-Kyrgyzstan 
*Durbin-Wu-Hausman
svy: ologit rtv4 lang tvexpose i.rusweb webexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
predict rtv4_pred3
gen res4=rtv4-rtv4_pred3
svy: logit relusa1 res4 tvexpose i.rusweb webexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity
test res4
*Regressions
eststo: svy: logit relusa1 ib1.rtv4 tvexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 
eststo: svy: logit relusa1 ib1.rtv4 tvexpose i.rusweb webexpose i.affinity remit i.educ ib2.income urban i.age female ib2.ethnicity 

*Instrument Strength (Indicative)
ivreg2 domestic1 (rtv5=lang) tvexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity [weight=weights], ffirst 
ivreg2 forpolr1 (rtv5=lang) tvexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity [weight=weights], ffirst 
ivreg2 warwho1 (rtv5=lang) tvexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity [weight=weights], ffirst 
ivreg2 warwho2 (rtv5=lang) tvexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity [weight=weights], ffirst 
ivreg2 relusa2 (rtv5=lang) tvexpose i.affinity remit i.educ i.income urban i.age female i.ethnicity [weight=weights], ffirst 


log off
